草庐IT

PHP in_array 通配符匹配

全部标签

javascript - 试图监视(Jasmine)Array.prototype 方法导致堆栈溢出

这很奇怪。将testemrunner与jasmine2一起使用并执行以下规范(尽管它正确地标记了没有期望):describe('Spyingonarray.prototypemethods',function(){it('shouldworkthisway',function(){spyOn(Array.prototype,'push').and.callThrough();//expect(1).toBe(1);});});但是,添加一个expect(任何expect!)它会导致堆栈溢出,并在testem控制台中显示以下消息:RangeError:超出最大调用堆栈大小。在http:/

javascript - JavaScript 中 new Array() 的未定义值

查看一些javascript代码,我看到了(类似于)这个:vararr=Array.apply(null,{length:10});阅读Function.prototype.apply()的MDN文档,我了解到虽然它通常需要一个数组作为它的第二个参数,这是一个要传递给调用函数的参数数组,youcanalsouseanykindofobjectwhichisarray-like,soinpracticethismeansit'sgoingtohaveapropertylengthandintegerpropertiesintherange(0...length).据我所知,它调用Arra

javascript - 正则表达式匹配 Markdown 链接

我有一个带有markdown的字符串。我正在尝试使用正则表达式去除所有Markdown,但在匹配链接时遇到问题。这是我得到的结果:functionstripMarkdown(text){varstr=String(text).replace(/(__|\*|\#)/gm,'');returnstr;}vartestStr='#Thisisthetitle.##Thisisthesubtitle.**sometext**__somemoretext__.[linkhere](http://google.com)'stripMarkdown(testStr);所以我相信上面的内容会去除除链

javascript - 为什么 [array].concat() 和 [array].concat.apply() 给出不同的输出?

下面的代码,console.log([].concat.apply([2],[[99],5,6,[2,3]]));输出[2,99,5,6,2,3]下面的代码,console.log([2].concat([99]).concat([5,6,[2,3]]));输出[2,99,5,6,[2,3]]我的假设是的输出console.log([].concat.apply([2],[[99],5,6,[2,3]]));应该是[2,[99],5,6,[2,3]]但不是,为什么? 最佳答案 那是因为:console.log([].concat.a

javascript - Array.prototype.forEach() 在使用 get 处理程序的代理上调用时不起作用

我有以下代理:constp=newProxy({[Symbol.iterator]:Array.prototype.values,forEach:Array.prototype.forEach,},{get(target,property){if(property==='0')return'one';if(property==='1')return'two';if(property==='length')return2;returnReflect.get(target,property);},});它是一个类似数组的对象,因为它具有数字属性和指定元素数量的length属性。我可以使用f

javascript - IE 替代 Array.prototype.find()

这个问题在这里已经有了答案:Array.prototype.find()isundefined(3个答案)关闭5年前。我之前编写了一些代码,将上传的文件与其相关的clientID相匹配,并将它们显示在一个表格中以显示哪些文件被分配给了哪些客户端。问题是我根据工作规范在Chrome和Safari上测试了这个并且它工作正常。问题是这在IE上不起作用,因为它不支持Array.prototype.find(),他们现在要求它与IE兼容。我看过其他问题,但答案是针对他们的具体情况的,通常会举例说明其他方法来完成他们正在寻找的事情。实现我想要做的事情的最佳方式是什么?varitem=clientL

javascript - 为什么我不能使用 array == [] 检查数组是否为空?

这是一个来自CodeWars的问题,名为“Countofpositives/sumofnegatives”。它说:Iftheinputarrayisemptyornull,returnanemptyarray为了检查数组是否为空,我决定检查它是否为空数组。当我尝试这样做时:if(input==[])我没有通过测试,但如果我通过了:if(input.length==0)我通过了测试。空数组应该等于[]对吗?为什么会有差异,这两种检查有什么区别?我的代码如下:functioncountPositivesSumNegatives(input){vara=0;varb=0;if(input==

javascript - 匹配所有以四个空格为前缀的行

我试图用pre标签包装所有以4个空格字符为前缀的行。这是我目前所拥有的Text=Text.replace(newRegExp("({4}.+?)","g"),"$1\n");Text=Text.replace(newRegExp("({4}.+?)\n","g"),"$1");它可以工作,但它会将每一行都包装在pre中。我需要它来包裹整个街区。 最佳答案 也许这样的事情会奏效?它连续匹配多行..({4}.*(\n{4}.*)*)\n 关于javascript-匹配所有以四个空格为前缀的行

javascript - 数字、字母 block 的正则表达式模式匹配

我有一些像这样的字符串aa11b2sabc1sff3a1b1sdd2等等……我需要将这些字符串更改为这些aa11b2sabc1sff3a1b1sdd2简单地说..我需要在每个(数字/字母s)block之间添加一个空格 最佳答案 varstr='aa11b2s'.replace(/([a-z]+|\d+)(?!$)/gi,'$1'); 关于javascript-数字、字母block的正则表达式模式匹配,我们在StackOverflow上找到一个类似的问题: ht

javascript - JavaScript 中的正则表达式 - 匹配类似 "ABC12"的字符串

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭10年前。如何在JavaScript中使用正则表达式匹配下面的字符串?总共有5个字符前3个字符为大写最后2个字符只是数字我得到了这个模式,[A-Z]{3}[0-9]{2},但它似乎仍然缺少一些东西。